plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
TIMES(s(x), y) → PLUS(y, times(x, y))
HELP(false, c, x, y, z) → TOWERITER(s(c), x, y, exp(y, z))
TOWER(x, y) → TOWERITER(0, x, y, s(0))
TIMES(s(x), y) → TIMES(x, y)
HELP(false, c, x, y, z) → EXP(y, z)
TOWERITER(c, x, y, z) → HELP(ge(c, x), c, x, y, z)
EXP(x, s(y)) → EXP(x, y)
TOWERITER(c, x, y, z) → GE(c, x)
EXP(x, s(y)) → TIMES(x, exp(x, y))
GE(s(x), s(y)) → GE(x, y)
PLUS(s(x), y) → PLUS(x, y)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
TIMES(s(x), y) → PLUS(y, times(x, y))
HELP(false, c, x, y, z) → TOWERITER(s(c), x, y, exp(y, z))
TOWER(x, y) → TOWERITER(0, x, y, s(0))
TIMES(s(x), y) → TIMES(x, y)
HELP(false, c, x, y, z) → EXP(y, z)
TOWERITER(c, x, y, z) → HELP(ge(c, x), c, x, y, z)
EXP(x, s(y)) → EXP(x, y)
TOWERITER(c, x, y, z) → GE(c, x)
EXP(x, s(y)) → TIMES(x, exp(x, y))
GE(s(x), s(y)) → GE(x, y)
PLUS(s(x), y) → PLUS(x, y)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
GE(s(x), s(y)) → GE(x, y)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
GE(s(x), s(y)) → GE(x, y)
The value of delta used in the strict ordering is 12.
POL(GE(x1, x2)) = (3)x_2
POL(s(x1)) = 4 + (2)x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
PLUS(s(x), y) → PLUS(x, y)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
PLUS(s(x), y) → PLUS(x, y)
The value of delta used in the strict ordering is 4.
POL(PLUS(x1, x2)) = (4)x_1
POL(s(x1)) = 1 + (4)x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
TIMES(s(x), y) → TIMES(x, y)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
TIMES(s(x), y) → TIMES(x, y)
The value of delta used in the strict ordering is 4.
POL(TIMES(x1, x2)) = (4)x_1
POL(s(x1)) = 1 + (4)x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
EXP(x, s(y)) → EXP(x, y)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
EXP(x, s(y)) → EXP(x, y)
The value of delta used in the strict ordering is 4.
POL(EXP(x1, x2)) = (4)x_2
POL(s(x1)) = 1 + (4)x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
HELP(false, c, x, y, z) → TOWERITER(s(c), x, y, exp(y, z))
TOWERITER(c, x, y, z) → HELP(ge(c, x), c, x, y, z)
plus(0, x) → x
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(x), y) → plus(y, times(x, y))
exp(x, 0) → s(0)
exp(x, s(y)) → times(x, exp(x, y))
ge(x, 0) → true
ge(0, s(x)) → false
ge(s(x), s(y)) → ge(x, y)
tower(x, y) → towerIter(0, x, y, s(0))
towerIter(c, x, y, z) → help(ge(c, x), c, x, y, z)
help(true, c, x, y, z) → z
help(false, c, x, y, z) → towerIter(s(c), x, y, exp(y, z))